home *** CD-ROM | disk | FTP | other *** search
/ Internet Surfer 2.0 / Internet Surfer 2.0 (Wayzata Technology) (1996).iso / pc / textfile / faqs / sco / xenix < prev   
Encoding:
Internet Message Format  |  1992-12-26  |  53.7 KB

  1. Xref: bloom-picayune.mit.edu comp.unix.xenix.sco:7107 news.answers:3920
  2. Newsgroups: comp.unix.xenix.sco,news.answers
  3. Path: bloom-picayune.mit.edu!snorkelwacker.mit.edu!news.media.mit.edu!micro-heart-of-gold.mit.edu!wupost!usc!cs.utexas.edu!chinacat!chip
  4. From: chip@chinacat.unicom.com (Chip Rosenthal)
  5. Subject: Welcome to comp.unix.xenix.sco [monthly FAQ posting]
  6. Expires: Tue, 5 Jan 1993 06:12:00 GMT
  7. Organization: Unicom Systems Development, Austin, TX
  8. Date: Fri, 06 Nov 1992 06:11:58 GMT
  9. Approved: news-answers-request@MIT.Edu
  10. Message-ID: <sco-xenix-921106@chinacat.unicom.com>
  11. Followup-To: comp.unix.xenix.sco
  12. Summary: answers to frequently asked questions
  13. Supersedes: <sco-xenix-921009@chinacat.unicom.com>
  14. Lines: 1280
  15.  
  16. Archive-name: sco-xenix
  17. News-answers-archive-name: sco/xenix
  18. Posting-frequency: monthly
  19. Version: 1.35
  20.  
  21. @(#) sco-xenix 1.35 92/11/06 00:06:25
  22.  
  23. Welcome to comp.unix.xenix.sco.  This newsgroup is about the XENIX
  24. operating system from the Santa Cruz Operation (SCO).  If you have an
  25. SCO XENIX question, then you've come to the right place.
  26.  
  27. This is NOT the newsgroup for SCO UNIX or Open Desktop questions.
  28. Please use comp.unix.sysv386.  It is also NOT the right place for
  29. questions about XENIX implementations from other vendors.  Use
  30. comp.unix.xenix.misc.
  31.  
  32. Certain questions are asked frequently on the net.  Frequently asked
  33. questions (FAQs) get old and boring after a while.  We can stamp out
  34. FAQs in your lifetime!  Please review this message before posting your
  35. question to comp.unix.xenix.sco.
  36.  
  37. You should also review the FAQ postings in comp.unix.questions and
  38. news.announce.newusers.  These answer general questions, such as `How
  39. do I delete a file with funny characters in the name?' and `How can
  40. I change my shell prompt?'  C programmers should also check out the
  41. FAQ in comp.lang.c.
  42.  
  43. Whenever we talk about XENIX here, we really mean SCO XENIX System V.
  44. Our comments often won't apply to the other kinds of XENIX.  Also, be
  45. particularly careful if you use XENIX/286.  It's been ages since we've
  46. used it and some of our suggestions might not apply.
  47.  
  48. This message is maintained and posted monthly by Chip Rosenthal.  Your
  49. corrections, additions, and comments are encouraged.  Please mail them
  50. to chip@chinacat.unicom.com or uunet!chinacat!chip.  These questions
  51. and answers were written by Chip Rosenthal, Jeff Liebermann, Ronald
  52. Florence, Chip Salzenberg, and Ronald Khoo.  Helpful contributions and
  53. comments have been provided by Andrew Phillips and Peter Funk.
  54.  
  55.  
  56. ******************************************************************************
  57. ****************************  Questions Answered  ****************************
  58. ******************************************************************************
  59.  
  60.  
  61. ===> Product Questions:
  62.  
  63.     QA1.  What is the difference between UNIX and XENIX?
  64.     QA2.  What is the minimum system required to run XENIX?
  65.     QA3.  Should I buy UNIX or XENIX?
  66.     QA4.  What are the current XENIX versions?
  67.     QA5.  Where can I get XENIX fixes?
  68.     QA6.  I'm using an older XENIX/386 version.  What fixes do I need?
  69.     QA7.  Does SCO have a BBS?
  70.  
  71.  
  72. ===> General XENIX Questions:
  73.  
  74.     QB1.  Can't boot.  My system used to work.
  75.     QB2.  Configure(ADM) fails when I modify my system name.
  76.     QB3.  I upgraded XENIX.  Now I get `parity error' panics.
  77.     QB4.  Login fails without prompting for password.
  78.     QB5.  Can I use `gcc' instead of buying the SCO Development System?
  79.     QB6.  Program `foobar' dumps core with a stack overflow. [XENIX 286]
  80.     QB7.  Spell cannot initialize hash table.
  81.     QB8.  Will my laser printer work with the Text Processing Package?
  82.     QB9.  Where is crypt?
  83.     QB10. How can email handle `internet' addresses or use a `smart host'?
  84.  
  85.  
  86. ===> Disk and Filesystem Questions:
  87.  
  88.     QC1.  Can I use a disk bigger than 1024 cylinders?
  89.     QC2.  Why won't XENIX recognize my SCSI disk?
  90.     QC3.  Where is the `/u' filesystem I created?
  91.     QC4.  `WARNING!! - mounting: <usr> as <news>' message when booting.
  92.     QC5.  `POSSIBLE FILE SIZE ERROR' when running `fsck'.
  93.     QC6.  Is disk fragmentation curable?
  94.  
  95.  
  96. ===> Communications Questions:
  97.  
  98.     QD1.  How do I add more than 2 COM ports?
  99.     QD2.  Where is the `gettydefs' entry for 19200 serial lines?
  100.     QD3.  How can I have more mscreen(C) sessions?
  101.     QD4.  Upgraded to 2.3.4 and flow control broke with mscreen(C).
  102.     QD5.  Terminals act funny, modems drop characters, help!!
  103.     QD6.  Does XENIX support 16550A UARTs?
  104.     QD7.  How do I increase the number of `clists'?
  105.     QD8.  How do I change the 16550A trigger level?
  106.     QD9.  How do I adjust the `ttyhog' value?
  107.     QD10. Where can I find TCP/IP?  NFS?
  108.     QD11. BSD based uucp can't connect to my machine.
  109.     QD12. uucp truncates my system name to seven characters!
  110.     QD13. What is the uucp `windows' patch?
  111.     QD14. uucp gives `alarm' messages, eventually dies.
  112.  
  113.  
  114. ===> Display and Graphics Questions:
  115.  
  116.     QE1.  How can I do graphics under XENIX?  What programs are available?
  117.     QE2.  CGI graphics mangles grey scale on a mono VGA.
  118.     QE3.  CGI graphics fail on a LaserJet in landscape mode.
  119.     QE4.  How can I do a printscreen under XENIX?
  120.  
  121.  
  122. ===> XENIX and MS-DOS Interoperability Questions:
  123.  
  124.     QX1.  Can XENIX share a hard disk with MS-DOS?
  125.     QX2.  Can XENIX access MS-DOS disks?
  126.     QX3.  Can XENIX execute MS-DOS programs?
  127.     QX4.  Can MS-DOS execute XENIX programs?
  128.  
  129.  
  130. ===> The (in)Famous XENIX Cheat-Sheet:
  131.  
  132.     QZ1.  What the $%*&! is happening?
  133.  
  134.  
  135. ******************************************************************************
  136. ****************************  Product Questions  *****************************
  137. ******************************************************************************
  138.  
  139.  
  140. QA1.  What is the difference between UNIX and XENIX?
  141.  
  142.     XENIX is UNIX -- or at least one flavor of it.  In the late 70's,
  143.     Microsoft licensed the UNIX sources from AT&T and ported them to a
  144.     number of platforms.  In those days AT&T would license the UNIX sources
  145.     but not the UNIX name, thus each company had to invent their own name.
  146.     Microsoft picked XENIX.  Microsoft did not sell XENIX to end users.
  147.     Instead, they licensed the software to OEMs (Intel, Tandy, Altos, SCO,
  148.     etc.) who provided a finished end-user package.  Microsoft no longer
  149.     supports XENIX, and in fact never even offered a 286 or 386 version.
  150.  
  151.     Several UNIX implementations for the PC architecture have been tried
  152.     with varying levels of success.  SCO XENIX for the PC/XT was one.
  153.     Unfortunately, the PC/XT lacked hardware features required for robust
  154.     UNIX operations.  The PC/AT offered hardware memory protection, and
  155.     SCO XENIX/286 took advantage of it.  SCO XENIX/386 added demand
  156.     paged virtual memory.  These added features made multiuser PCs
  157.     viable, and SCO XENIX popular.
  158.  
  159.     SCO XENIX starts with a UNIX System III base, throws in several
  160.     Berkeley enhancements, and adds features to obtain conformance to
  161.     the System V Interface Definition (SVID).  Today, the bulk of the
  162.     code is from System V.  XENIX/386 even has capabilities to execute
  163.     UNIX programs.  However, it differs in many of the SVID `optional'
  164.     areas people tend to expect of a full System V.  For example, SCO
  165.     XENIX lacks a real `inittab'.  You need to go to a real System V
  166.     Release 3.2, such as SCO UNIX, for all these features.
  167.  
  168.  
  169. QA2.  What is the minimum system required to run XENIX?
  170.  
  171.     For a minimal single-user XENIX system, we recommend an 80386SX-16
  172.     processor, 2MB to 4MB RAM, and 40MB hard disk.  For the full XENIX
  173.     system (Run Time, Development, and Text Processing), consider an
  174.     80386DX-20 processor, 4MB RAM, and 80MB hard disk.  Additional
  175.     resources will be required to support additional users, large
  176.     applications, networking, or X windows.  XENIX/286 will run on a
  177.     PC/AT, but you will quickly become frustrated with its limitations,
  178.     especially if you are a programmer.
  179.  
  180.  
  181. QA3.  Should I buy UNIX or XENIX?
  182.  
  183.     If you are running XENIX now, don't throw it away and buy UNIX.
  184.     XENIX will be around for some time.  However, if you are new to
  185.     multi-user computing, you should consider UNIX System V Release
  186.     3.2 or Release 4.0.  XENIX is a mature product.  There will be
  187.     few future enhancements.  UNIX has more goodies and better
  188.     performance than XENIX.  UNIX runs XENIX binaries, so it will do
  189.     most anything XENIX can -- and more.  XENIX requires less memory
  190.     and disk space.  However, hardware prices are declining and UNIX
  191.     is now pretty stable, so these are not great advantages.
  192.  
  193.     On the other hand there are a number of XENIX enthusiasts who
  194.     wouldn't switch if you gave them a free copy of UNIX.  They would
  195.     gladly forgo the new features to avoid the bloat of System V.
  196.  
  197.  
  198. QA4.  What are the current XENIX versions?
  199.  
  200.         Package                 Version         `perms' file
  201.         ----------------------  --------------  ---------------------------
  202.         XENIX Runtime System    2.3.4           inst, dsmd, tpmd, rts, ext
  203.         XENIX Runtime (286)     2.3.2           inst, dsmd, tpmd, rts, ext
  204.         Development System(386) 2.3.1           soft
  205.         Development System(286) 2.2.1           soft
  206.         CGI                     1.1.0           cgi
  207.         Text Processing         2.3.0           text
  208.         Manual Pages            2.3.0           man
  209.         VP/ix                   1.2.0           vpix
  210.         TCP/IP Runtime          1.2.0           tcprt
  211.         TCP/IP Development      1.0.1           tcpdev
  212.         Streams Runtime         1.0.0           streamsrt
  213.         Streams Toolkit         1.0.0           streamstk
  214.         Int'l Supplement(386)   2.1.0           sup.os
  215.         Int'l Supplement(286)   2.0.0           sup.os
  216.  
  217.     The perms column lists files found in the /etc/perms directory.
  218.     The `#rel=' line in these files will tell you what version you
  219.     have.
  220.  
  221.  
  222. QA5.  Where can I get XENIX fixes?
  223.  
  224.     SCO provides Support Level Supplements (SLS) at no charge.  They
  225.     may be downloaded by anonymous uucp from SCO's `sosco' machine.
  226.     To retrieve a shopping list of available SLSs, add one of the
  227.     following to your `/usr/lib/uucp/Systems' file:
  228.  
  229.         # Telebit (PEP) modem
  230.         sosco Any ACU 19200 14084291786u gin:-BREAK-gin:-BREAK-gin: uusls
  231.         # Hayes V-Series modem
  232.         sosco Any ACU 19200 14084274470 gin:-BREAK-gin:-BREAK-gin: uusls
  233.         # 1200 or 2400 bps modem
  234.         sosco Any ACU 300-2400 14084253502 gin:-BREAK-gin:-BREAK-gin: uusls
  235.  
  236.     European folks might prefer to use `scolon' instead.  From within
  237.     the UK, try:
  238.  
  239.         scolon Any ACU 300-19200 0923210911u \
  240.                 gin:-BREAK-gin:-BREAK-gin: uusls word: bbsuucp
  241.  
  242.     Outside the UK, replace the leading zero with the country code.
  243.     A 9600bps Trailblazer answers this line.  Delete the `u' at the
  244.     end of the phone number if you aren't using a Telebit modem.
  245.     Files are as on `sosco' but tend to be a week or so behind.  Also,
  246.     replace `sosco' with `scolon' `sosffm' in the examples below.
  247.  
  248.     In Germany, you can use:
  249.  
  250.         sosffm Any ACU 300-9600 069-50910736 \
  251.                 "" \r ogin:-BREAK-ogin: uusls sword: bbsuucp
  252.  
  253.     This modem supports V.32 transfers, but not PEP.  We've been told
  254.     this system is often behind the other sites.
  255.  
  256.     Add to your `/usr/lib/uucp/Permissions' file:
  257.  
  258.         # REQUEST files only - i.e. cannot send to sosco.
  259.         # rmail required to get bounced mail and error messages.
  260.         MACHINE=sosco SENDFILES=yes REQUEST=no COMMANDS=rmail:uucp \
  261.                 WRITE=/usr/spool/uucppublic:/tmp
  262.  
  263.     To retrieve an SLS listing to your machine as /tmp/info:
  264.  
  265.         uucp sosco\!/usr/spool/uucppublic/SLS/info /tmp/info
  266.  
  267.     This file also provides directions on retrieving, unarchiving,
  268.     and uncompressing the SLSs.  There is also a `descriptions' file
  269.     with additional details on the available SLSs.
  270.  
  271.     SLSs are also available on `uunet'.  For example, to get the `info'
  272.     file, run:
  273.  
  274.         uucp uunet\!~/vendor/sco/SLS/info /tmp/info
  275.  
  276.     Most of these machines also have Enhanced Feature Supplements (EFSs),
  277.     games and graphics programs, and new termcap and terminfo terminal
  278.     definitions in addition to SLS.  Look for an `info' or `README' file
  279.     one directory up from the `SLS' directory for more info.
  280.  
  281.  
  282. QA6.  I'm using an older XENIX/386 version.  What fixes do I need?
  283.  
  284.     Development System
  285.  
  286.     - 2.2.X or older    An upgrade to 2.3.1 must be purchased from SCO.
  287.  
  288.     - 2.3.1             Install `lng244'.
  289.  
  290.     Operating System
  291.  
  292.     - 2.2.X or older    An upgrade to 2.3.4 must be purchased from SCO.
  293.  
  294.     - 2.3.0 or 2.3.1    SCO would like you to purchase a 2.3.4 upgrade.
  295.                         The `xnx137' fix would get you to 2.3.2, but SCO
  296.                         does not provide it any longer.
  297.  
  298.     - 2.3.2             Install `xnx296a' to get to version 2.3.3.
  299.  
  300.     If you have VP/ix and installed update UFJ, then your kernel is
  301.     already at 2.3.3.  None the less, you still want `xnx296a'.  The
  302.     `xnx296a' update is also known as UFN, and replaces UFJ and UFM.
  303.     UFM was also known as the `xnx155b' update.
  304.  
  305.     You must install the development system before `xnx296a'.
  306.  
  307.     `xnx296a' provides you with most of the important fixes in 2.3.4.
  308.     You will lack some of the nice enhancements such as updated man
  309.     pages and the Korn shell.
  310.  
  311.     SCO preconfigures the kernel for a very minimal system.  You should
  312.     tune the kernel for your exact system configuration.  See the
  313.     "Tuning Kernel Parameters" chapter in the System Administrator's
  314.     Guide.
  315.  
  316.  
  317. QA7.  Does SCO have a BBS?
  318.  
  319.     Yes.  The SOS Support BBS is $95/year.  This is a good deal.  You
  320.     can:
  321.  
  322.         - download fixes, suggestions, and hints.
  323.         - keyword access to the support problems database.
  324.         - retrieve product info, release status, and hardware compatibility.
  325.         - get support via email.
  326.         - subscription to quarterly Discover newsletter.
  327.  
  328.     You can dial-in with a terminal program such as `cu' -- uucp is
  329.     not required.  Access is read-only, but most questions can be
  330.     answered by the support database.  SCO currently doesn't provide
  331.     SOS access to most overseas users.
  332.  
  333.     You might also consider joining the ``SCO Developer Alliance Associates
  334.     Program.''  This costs $100/year, and also provides access to the BBS.
  335.     Contact devrel@sco.com for additional information.
  336.  
  337.  
  338. ******************************************************************************
  339. *************************  General XENIX Questions  **************************
  340. ******************************************************************************
  341.  
  342.  
  343. QB1.  Can't boot.  My system used to work.
  344.  
  345.     Check the A: drive.  If there is a floppy in there your system
  346.     might spew garbage on the monitor or hang during boot.  If this
  347.     problem occurs right after rebuilding a new kernel, go read the
  348.     FAQ on disks bigger than 1024 cylinder.
  349.  
  350.  
  351. QB2.  Configure(ADM) fails when I modify my system name.
  352.  
  353.     If you select a site name of two, three, or four characters,
  354.     `configure' will fail with an error message:
  355.  
  356.         space.asm(XXX): error A2050: Value out of range
  357.  
  358.     If the development system is installed, there is a workaround.
  359.     Do the following:
  360.  
  361.         - cd /usr/sys/conf
  362.  
  363.         - Edit `xenixconf'.  Search for the `nodename' line and enter
  364.           the desired system name between the double quotes.  For
  365.           example, for machine name = `foo' this line should read:
  366.  
  367.               nodename             "foo"
  368.  
  369.         - Similarly, edit the `master' file and correct the `nodename'
  370.           line.  For machine name = `foo' it should read:
  371.  
  372.               nodename  NODE      "foo"
  373.  
  374.         - Run `make'.  This will rebuild the kernel data files and
  375.           then link a new kernel.
  376.  
  377.         - Run `./hdinstall' to install the new kernel.
  378.  
  379.     Reboot the system, and the new node name should be in effect.  To
  380.     verify this, run `uname -a' after rebooting.
  381.  
  382.     This bug has been fixed in 2.3.4.
  383.  
  384.  
  385. QB3.  I upgraded XENIX.  Now I get `parity error' panics.
  386.  
  387.     Starting with XENIX 2.3.3, memory parity errors are detected by
  388.     the kernel.  In previous versions, parity errors would cause the
  389.     system to go silently flaky, but continue running.  Now, when a
  390.     parity error occurs, the machine will panic saying:
  391.  
  392.         PANIC: memory failure - parity error
  393.  
  394.     If you get this error after installing an update, XENIX didn't
  395.     break your machine -- it's been broken all along.  The most likely
  396.     cause of this error truly is memory problems.  Run a good memory
  397.     diagnostic overnight to try to locate the problem.  Keep the cover
  398.     on the computer while running diagnostics; heat tends to push a
  399.     marginal memory chip into failure.
  400.  
  401.     This problem can also be caused by a marginal power supply.  XENIX
  402.     boxes often have more power hungry peripherals than your run of
  403.     the mill MS-DOS PC.  For example, suspect the power supply if the
  404.     panics occur as soon as the tape drive starts spinning.
  405.  
  406.  
  407. QB4.  Login fails without prompting for password.
  408.  
  409.     If /dev/tty is missing or incorrect, you will get a `Login incorrect'
  410.     message without ever being prompted for a password.  For security
  411.     reasons, the `login' program goes directly to /dev/tty to ensure
  412.     the password comes from the keyboard.  Your `tty' device should
  413.     look something like:
  414.  
  415.         crw-rw-rw-   2 bin      bin        3,  0 Oct 24 04:09 /dev/tty
  416.  
  417.     If necessary, use the `mknod' command to recreate it.
  418.  
  419.  
  420. QB5.  Can I use `gcc' instead of buying the SCO Development System?
  421.  
  422.     No.  It takes more than a compiler to produce executable programs.
  423.     You might be able to pick up bits and pieces (like `make' and
  424.     `yacc') from various places, but not the header files and libraries.
  425.     You can't compile programs without them, and the only way to get
  426.     them is with the Development System.
  427.  
  428.  
  429. QB6.  Program `foobar' dumps core with a stack overflow. [XENIX 286]
  430.  
  431.     XENIX/286 programs request a fixed amount of space for the stack
  432.     in the executable file header.  A program that exceeds this limit
  433.     will crash with a core dump.  To fix, change the header to ask
  434.     for more stack space.  You can recompile your programs with the
  435.     `-F' flag to increase the stack size.  You can change the stack
  436.     size of existing programs by running `fixhdr' with the `-F' flag.
  437.     This is not a problem on 80386 binaries that use a variable stack.
  438.  
  439.  
  440. QB7.  Spell cannot initialize hash table.
  441.  
  442.     The `spell' script (included in the optional Text Processing
  443.     package) uses an 8086 binary.  It needs to stuff a bunch of data
  444.     into a single 64K segment.  If you exceed this limit, you will
  445.     get an error saying something like:
  446.  
  447.         table = malloc(0xc848) fails
  448.         sbrk(0) = 0x3868
  449.         spell: cannot initialize hash table
  450.  
  451.     You can usually get enough space for `spell' to run by clearing
  452.     out your environment first.  To do this, add the following line
  453.     near the top of the `/usr/bin/spell' script:
  454.  
  455.         unset `env | sed -e '/^PATH=/d' -e '/^PS1=/d' -e 's/=.*//'`
  456.  
  457.  
  458. QB8.  Will my laser printer work with the Text Processing Package?
  459.  
  460.     XENIX `troff' is based on a version written long before the advent
  461.     of laser printers.  The only thing old troff understands is C/A/T
  462.     typesetters.  Chris Lewis's `psroff' allows old troff to work with
  463.     various devices, including Postscript and LaserJet printers.
  464.     Version 3.0 is available from the comp.sources.unix archives.
  465.  
  466.     For production work, consider purchasing a device independent
  467.     troff.  Some of the suppliers of `ditroff' are Elan, Image Network,
  468.     Leverage, and SoftQuad.
  469.  
  470.     Another alternative is the `groff' package by the Free Software
  471.     Foundation.  You can find it in any of the FSF archives -- but you
  472.     will need `g++' to compile it.  You will still need a backend program
  473.     to use a LaserJet with `groff'.  Some possibilities are `psroff'
  474.     and `dvi2xx' on ftp.wu-wien.ac.at.
  475.  
  476.  
  477. QB9.  Where is crypt?
  478.  
  479.     The DES encryption algorithm, the basis for `crypt', is categorized
  480.     by the US Government as munitions.  (Three cheers for the cold
  481.     war!)  SCO removes the crypt(S) procedure and crypt(C) command
  482.     from XENIX so it may be exported.  US domestic customers may
  483.     contact SCO to obtain SLS LNG190B.  If you simply need a crypt(S)
  484.     procedure to compile programs that do password checking, you may
  485.     get the SLS LNG255B `International Crypt SLS' from any of the
  486.     aforementioned archive sites.  This provides a crypt(S) procedure
  487.     that supports encryption but not decryption, and it does not
  488.     include the crypt(C) command.  A number of non-domestic archive
  489.     sites, for example the European GNU mirror sites, carry `crypt'
  490.     replacements which were developed outside the US to avoid this
  491.     export silliness.
  492.  
  493.  
  494. QB10.  How can email handle `internet' addresses or use a `smart host'?
  495.  
  496.     Neither the SCO XENIX mail transport (/usr/lib/mail/execmail) nor
  497.     the mail program (/usr/bin/mail) can handle so-called `internet'
  498.     addresses (e.g. joe@acme.com).  Nor can they use a `smart host'
  499.     system to route your email to its final destination.  If you want
  500.     to add these features, you need to install a replacement transport
  501.     and reconfigure the mailer to use this transport.  For simple uucp
  502.     connectivity, we recommend smail2.5 (archive name `smail3' published
  503.     in comp.sources.unix volume 11).  If you also need network
  504.     connectivity (e.g. SMTP mail) then you'll need a more full-featured
  505.     mailer such as smail3.1, sendmail, or MMDF.
  506.  
  507.     Although smail2.5 fits right into the SCO mail system, some
  508.     modifications and installation tricks are required.  Both Chip
  509.     Salzenberg (see the comp.sources.misc archives) and Chip Rosenthal
  510.     (contact chip@chinacat.unicom.com) have provided solutions.
  511.  
  512.     Whatever approach you use, you must tell /usr/bin/mail to pass
  513.     messages off to execmail for delivery rather than handling them
  514.     itself.  Do this by adding a line which says `set execmail' to
  515.     the /usr/lib/mail/mailrc file.  You might also think about adding
  516.     a nice, full-screen mailer program such as Elm or Mush.
  517.  
  518.  
  519. ******************************************************************************
  520. **********************  Disk and Filesystem Questions  ***********************
  521. ******************************************************************************
  522.  
  523.  
  524. QC1.  Can I use a disk bigger than 1024 cylinders?
  525.  
  526.     Yes.  However, your root filesystem cannot extend beyond the 1024th
  527.     cylinder, because that's as far as the BIOS can reach when booting
  528.     the system.  The BIOS is bypassed after XENIX boots, so cylinders
  529.     beyond 1024 can be accessed once XENIX is running.  It is not
  530.     necessary to use a sector translation mode controller to reduce
  531.     the number of cylinders.  The translation mode is very slow.
  532.     Early SCO documentation wrongly claimed large disks weren't
  533.     supported.  This is the source of confusion over this issue.
  534.  
  535.  
  536. QC2.  Why won't XENIX recognize my SCSI disk?
  537.  
  538.     Not all versions of XENIX support SCSI and those that do won't run
  539.     all SCSI adapters.  First, verify your N1 floppy says `Type: 386GT'
  540.     and not `Type: 386AT'.  The AT version of XENIX (now obsolete) does
  541.     not include any SCSI support.
  542.  
  543.     The GT version supports a limited number of SCSI host adapters.  The
  544.     Adaptec AHA-154x is supported.  We've also used compatibles such as
  545.     the Bustek BT-542B.  2.3.4 also supports WD1009V-SE1/2 and WD-7000-FASST2.
  546.     If you've got something different, you probably need to get a driver
  547.     from the board vendor.  The `SCO Hardware Compatibility Guide' (contact
  548.     SCO sales for one) should be consulted whenever you have any hardware
  549.     compatibility questions.
  550.  
  551.     Some typical installation mistakes are:
  552.  
  553.     - SCSI ID jumper for the root (boot) hard disk must be ID=0.
  554.     - The BIOS must be set for drive C:=NONE in the CMOS setup program.
  555.     - I/O port, memory address, or interrupt misconfiguration/conflict.
  556.     - Terminating resistors installed only at ends of ribbon cable.
  557.     - The parity jumper should be enabled on all drives and controllers.
  558.  
  559.     A word on terminating resistors:  Terminators must be installed on
  560.     the two devices at the end of the SCSI chain.  If you have no external
  561.     devices then one end of the chain will be the SCSI adapter -- so it
  562.     gets terminators.  The last device on the ribbon cable also needs
  563.     terminators.  The terminators must be removed from everything else on
  564.     the SCSI chain.
  565.  
  566.     Note:  If you are using XENIX 386GT 2.3.1-2.3.3 you should install
  567.     xnx252b for ISA or xnx150 for MCA.  This is an improved SCSI driver
  568.     that yields a significant performance improvement.
  569.  
  570.  
  571. QC3.  Where is the `/u' filesystem I created?
  572.  
  573.     When you create filesystems during the install procedure or with
  574.     `mkdev hd', the filesystem is initialized but it isn't configured
  575.     into the system.  To perform that final step you need to run `mkdev
  576.     fs'.  For example, if you created a `/u' filesystem, run:
  577.  
  578.         mkdev fs /dev/u /u
  579.  
  580.  
  581. QC4.  `WARNING!! - mounting: <usr> as <news>' message when booting.
  582.  
  583.     Due to a bug in the `mkdev fs' program, filesystems mounted below
  584.     the root directory are labeled wrong.  For example, if you mount
  585.     a device `/dev/news' onto directory `/usr/spool/news', then you
  586.     will get a warning message when going into multi-user mode.  That's
  587.     because `mkdev fs' labels the filesystem with the first component
  588.     in the pathname (`usr' in this example) when it really should be
  589.     the last component in the pathname (`news' in this example).
  590.  
  591.     This message is merely an annoyance and will not hamper system
  592.     operation.  To eliminate the warning, relabel the filesystem with
  593.     the last component of the mount directory.  For the above example,
  594.     you may change the label from `usr' to `news' by running the command:
  595.  
  596.         fsname -s news /dev/news
  597.  
  598.  
  599. QC5.  `POSSIBLE FILE SIZE ERROR' when running `fsck'.
  600.  
  601.     If `fsck' says `POSSIBLE FILE SIZE ERROR I=nnnn' don't panic.  It
  602.     almost always means `fsck' found a `sparse file', not a true
  603.     filesystem error.  A sparse file has holes in it.  They are created
  604.     when a program skips over sections of a file it is writing.  The
  605.     XENIX filesystem fills in those sections with zeros.  The XENIX
  606.     filesystem doesn't even both allocating disk blocks for the sections
  607.     full of zeros, thus creating a sparse file.  The complaint occurs
  608.     because `fsck' calculates the number of disk blocks needed to
  609.     store the file, counts up the number of disk blocks actually used
  610.     by the file, and complains that the two don't match.
  611.  
  612.     When you get a file size error from `fsck' you should note both
  613.     the `I=nnnn' inode number logged in the message and the filesystem
  614.     which was being checked.  You can see what the file is by running
  615.     the following command:
  616.  
  617.         ncheck -i <nnnn> <fsname>
  618.  
  619.     where <nnnn> is the number logged in the error message and <fsname>
  620.     is the pathname of the filesystem device, e.g. `/dev/u'.  Chances
  621.     are the file will either be a dbm(S) database file (in which case
  622.     ignore the complaint, it's expected) or a `core' dump (in which
  623.     case delete the `core' file).
  624.  
  625.  
  626. QC6.  Is disk fragmentation curable?
  627.  
  628.     Not easily.  However, the steps to slow down fragmentation are
  629.     pretty simple.
  630.  
  631.     XENIX maintains a list of available disk blocks.  As files are
  632.     deleted, the released blocks are appended to this free list.
  633.     Ideally, one would allocate adjacent blocks for new files.  However,
  634.     blocks are added to and removed from the free list without regard
  635.     for location.  Eventually, new files will be created with their
  636.     data blocks scattered all around the disk.  This fragmentation is
  637.     undesirable because it slows down disk accesses.
  638.  
  639.     To slow down the tendency towards fragmentation, periodically
  640.     reorder the blocks in the free list.  To do this, dismount the
  641.     filesystem (with `/etc/umount') and run `fsck -S'.  You will get
  642.     a message saying:
  643.  
  644.         FILE SYSTEM NOT MODIFIED, STILL DIRTY.
  645.  
  646.     Don't worry -- ignore that message.
  647.  
  648.     To determine how badly your filesystems are fragmented, run
  649.     `fsanalyze' by Michael J. Young, from comp.sources.misc.  You will
  650.     need patchlevel 3 to analyze XENIX filesystems.
  651.  
  652.     The conventional cure for filesystem fragmentation is:
  653.  
  654.     - Make a full backup of the filesystem.  Use `cpio' (or `afio' if
  655.       available).  `dump' and `volcopy' do an image backup that will
  656.       restore in a fragmented manner.  `tar' does not backup device
  657.       nodes, pipes, or directories.
  658.  
  659.     - Recreate an empty filesystem with `divvy' or `mkfs'.  `divvy'
  660.       is easier to use -- simply select the `create' option.  However,
  661.       `mkfs' will be required if you want a non-default number of
  662.       inodes.  Invoke `divvy' with:
  663.  
  664.         /etc/divvy -c 1 -b 1            # for 1st physical disk
  665.         /etc/divvy -c 1 -b 1 -p 1       # for 2nd physical disk
  666.  
  667.     - Reload the filesystem from the backup.
  668.  
  669.     - Regenerate the `lost+found' directory.  Run:
  670.  
  671.         # Substitute appropriate name for `foo'.
  672.         /etc/fsck /dev/foo
  673.         /etc/mount /dev/foo /foo
  674.         mkdir /foo/lost+found
  675.         for i in 1 2 3 4 5 6 7 8 ; do
  676.             for j in 1 2 3 4 5 6 7 8 ; do
  677.                 touch /foo/lost+found/x$i$j
  678.             done
  679.         done
  680.         rm /foo/lost+found/x??
  681.         /etc/umount /dev/foo
  682.  
  683.     Be very careful with this procedure.  We suggest you verify your
  684.     backup is readable before zapping the filesystem.  One mistake
  685.     (especially when running `mkfs' or `divvy') will trash everything.
  686.     The filesystem you trash may be your own.
  687.  
  688.  
  689. ******************************************************************************
  690. *************************  Communications Questions  *************************
  691. ******************************************************************************
  692.  
  693.  
  694. QD1.  How do I add more than 2 COM ports?
  695.  
  696.     Dumb serial cards (and internal modems) may be configured for XENIX
  697.     as COM3 and COM4 -- with one big caveat.  Each COM port requires its
  698.     own interrupt number.  If you have an unused IRQ and the Development
  699.     System, you may build additional COM ports into the kernel.  To
  700.     illustrate the procedure, we will add a COM3 configured as follows:
  701.  
  702.         I/O Addr: 0x3E8
  703.         IRQ:      5
  704.         device:   /dev/tty3a    Major=5, Minor=16
  705.                   /dev/tty3A    Major=5, Minor=144
  706.  
  707.     1.  Edit `/usr/sys/io/sioconf.c'.
  708.  
  709.         The two lines in this file that describe COM1 and COM2 are:
  710.  
  711.             {0,IBM_BOARD,  1,4,0,  (sd)0x3f8,0,     0,MCRBIT3}, /*ibm COM1*/
  712.             {1,IBM_BOARD,  1,3,8,  (sd)0x2f8,0,     0,MCRBIT3}, /*ibm COM2*/
  713.  
  714.         Add a line that says:
  715.  
  716.             {2,IBM_BOARD,  1,5,16, (sd)0x3e8,0,     0,MCRBIT3}, /*ibm COM3*/
  717.  
  718.         See `/usr/sys/io/sioconf.h' for details.
  719.  
  720.     2.  Edit `/usr/sys/conf/master'.
  721.  
  722.         The serial ports are defined by the line:
  723.  
  724.             sio     4    0577 104     sio   0   0   5   1   7   3   4  33  34
  725.  
  726.         The last four fields define the interrupt numbers used.  Change
  727.         the `33' to a `5' since COM3 will be on IRQ5.  For reference,
  728.         here is the mapping between IRQ lines and the master file
  729.         `magic numbers':
  730.  
  731.             IRQ0  0       IRQ4  4       IRQ8  30      IRQ12  34
  732.             IRQ1  1       IRQ5  5       IRQ9  31      IRQ13  35
  733.             IRQ2  31      IRQ6  6       IRQ10 32      IRQ14  36
  734.             IRQ3  3       IRQ7  7       IRQ11 33      IRQ15  37
  735.  
  736.     3.  Rebuild the kernel.  Run:
  737.  
  738.             cd /usr/sys/conf
  739.             make
  740.  
  741.         Do not use `link_xenix' here.  You need to run `make' to get
  742.         `sioconf.o' and the kernel data files rebuilt.
  743.  
  744.     4.  Install the new kernel.  Run:
  745.  
  746.             /usr/sys/conf/hdinstall
  747.  
  748.         This will make a backup of your current kernel to `/xenix.old'.
  749.  
  750.     5.  Create the device nodes.  Run:
  751.  
  752.             mknod /dev/tty3a c 5 16
  753.             mknod /dev/tty3A c 5 144
  754.  
  755.     Reboot your system, and the new serial port should be there.
  756.  
  757.  
  758. QD2.  Where is the `gettydefs' entry for 19200 serial lines?
  759.  
  760.     For historical reasons, terminal speeds of 19200 and 38400 are
  761.     called `EXTA' and `EXTB', not `B19200' and `B38400'.  Entries `n'
  762.     and `o' in the `/etc/gettydefs' file are for 19200 and 38400,
  763.     respectively.  Once logged in you can change the line speed with
  764.     the `stty' command:
  765.  
  766.         stty 9600               # set to 9600 bps (bits per second)
  767.         stty exta               # set to 19200 bps
  768.         stty extb               # set to 39400 bps
  769.  
  770.     A smart serial card is recommended for these two highest speeds.
  771.  
  772.  
  773. QD3.  How can I have more mscreen(C) sessions?
  774.  
  775.     The mscreen(C) facility provides multiple sessions from a serial terminal
  776.     by `multiplexing' your terminal (tty) line onto several pseudo-terminal
  777.     (pty) lines.  XENIX is shipped with eight ptys enabled, that provides
  778.     a system-wide limit of eight sessions through the mscreen(C) command.
  779.  
  780.     First off, you need to determine whether you are allocating mscreen(C)
  781.     sessions wisely.  For example, SCO ships an `/etc/mscreencap' file
  782.     that runs six sessions on a WY-60 terminal.  If you edit `mscreencap'
  783.     and cut this down to three you immediately double the number of people
  784.     who can run mscreen(C).
  785.  
  786.     You cannot increase this number beyond eight if you are running TCP/IP.
  787.     (More about this in a moment.)  If you are not running TCP/IP, then
  788.     you can increase the number of possible mscreen(C) sessions by:  first
  789.     creating more ptys in the kernel, second creating the device nodes
  790.     for the new ptys, and finally placing a `getty' upon each of these
  791.     new ptys.
  792.  
  793.     To create more ptys in the kernel, increase the `nspttys' kernel
  794.     parameter.  With XENIX 2.3.4, run the `configure' command interactively
  795.     and select the `Multiscreens' option.  For older versions of XENIX,
  796.     run `configure' manually.  For example, to provide sixteen ptys, run:
  797.  
  798.         cd /usr/sys/conf
  799.         ./configure nspttys=16
  800.  
  801.     Once `nspttys' is set, run `link_xenix' and `hdinstall' to build and
  802.     install a new kernel.
  803.  
  804.     Next, you need to create the device nodes in the /dev directory for
  805.     these additional ptys.  Unfortunately, mscreen(C) uses a very poor
  806.     naming strategy for ptys beyond the 8th.  Once you go beyond the
  807.     /dev/ttyp7 in the base XENIX distribution, mscreen(C) next looks for
  808.     not /dev/ttyp8, but rather /dev/ttyp01.  Therefore you should create
  809.     the eighth pty with the commands:
  810.  
  811.         cd /dev
  812.         mknod ttyp01 c 54 8
  813.         mknod ptyp01 c 55 8
  814.         chmod 666 ptyp01
  815.         chmod 644 ttyp01
  816.  
  817.     You might notice that these names are the same ones used by `rlogind'
  818.     and `telnetd' under SCO TCP/IP.  Unfortunately, to use these ptys for
  819.     mscreen(C) you need to place a `getty' on them -- but if you do then
  820.     rlogin/telnet will break.  Those running TCP/IP (and not weak of heart)
  821.     can try editing the `/dev/ttyp' string in the `mscreen' binary and
  822.     totally rename the pty devices.
  823.  
  824.     Finally, edit `/etc/ttys' (and `/etc/ttytype') to tell them about
  825.     the new pty lines, and run `enable' upon each of the lines.
  826.  
  827.  
  828. QD4.  Upgraded to 2.3.4 and flow control broke with mscreen(C).
  829.  
  830.     The 2.3.4 version of mscreen(C) was changed to run the tty line totally
  831.     raw.  This is required so that the ^S and ^Q keys are passed onto
  832.     programs that need them, such as `emacs' and Foxbase.  An unfortunate
  833.     side effect of handling flow control on the pty side rather than the
  834.     tty side is that response to flow control is a lot more sluggish.  Now,
  835.     when you hit ^S you might get another screenful of data before the
  836.     display actually freezes.
  837.  
  838.     If you never run any applications that require full 8-bit transparency,
  839.     one way to make flow control more responsive is to rename `mscreen'
  840.     to `/usr/bin/mscreen.sco' and install the following script in its
  841.     place:
  842.  
  843.         :
  844.         tty=`tty`
  845.         ( sleep 5 ; stty ixon <$tty ) &
  846.         exec mscreen.sco
  847.  
  848.  
  849. QD5.  Terminals act funny, modems drop characters, help!!
  850.  
  851.     If you are losing characters on your serial lines, consider the
  852.     following steps:
  853.  
  854.     * Ensure that flow control is working right.
  855.  
  856.     * If you are running dumb COM ports, either upgrade the UART chips
  857.       to 16550As or switch to a smart serial card.
  858.  
  859.     * If you have a lot of users or lots of high speed data lines,
  860.       increase the number of `clist' buffers in the kernel.
  861.  
  862.     * If you upgraded to 16550A UARTs and this helped but did not
  863.       solve the problem, then adjust the FIFO trigger level.
  864.  
  865.     * If you are running high speed lines on a loaded system, adjust
  866.       the `ttyhog' value.
  867.  
  868.     When diagnosing serial problems, start at the top of this list
  869.     and work down.  If your flow control is broke, it will do no good
  870.     to go poking around inside your XENIX kernel.
  871.  
  872.  
  873. QD6.  Does XENIX support 16550A UARTs?
  874.  
  875.     The guts of a standard COM port is a UART (universal asynchronous
  876.     receiver/transmitter) chip.  Most serial ports use the 16450 or
  877.     an equivalent chip.  The 16550A is a pin-compatible, drop in
  878.     replacement which adds 16-characters of on-chip FIFO buffering.
  879.     The FIFOs reduce system loading and increase performance.
  880.  
  881.     Starting with 2.3.4, the `sio' driver recognizes 16550A UARTs and
  882.     enables the on-chip FIFOs.  Older versions of XENIX merely treat
  883.     this chip as an expensive 16450.  You can get 16550A support with
  884.     any version of XENIX by installing the FAS driver written by Uwe
  885.     Doering and based upon Jim Murray's `asy' driver.  FAS was published
  886.     in alt.sources, and is available at most reputable archive sites.
  887.  
  888.     We recommend sticking with the National Semiconductor NS16550A.
  889.     Many manufactures make usable 16450 clones, but some of the 16550
  890.     compatible chips aren't so compatible.  Also, older versions of
  891.     the 16550 are known to be broken.  Ensure yours have an `A' suffix.
  892.  
  893.  
  894. QD7.  How do I increase the number of `clists'?
  895.  
  896.     XENIX buffers terminal characters in data structures called
  897.     `clists'.  There is a fixed pool of clists on the system, and when
  898.     that supply is exhausted incoming characters are dropped.  Therefore,
  899.     the more active users you have on your system, the larger this
  900.     pool of clists should be.  The default configuration is 100 clists.
  901.     Each terminal line requires an average of 5 to 10 clists.  High
  902.     speed modems need more.  A conservative strategy would be to
  903.     allocate 15 clists per active terminal.  For example, if you have
  904.     16 serial ports and 4 console screens active at once, allocate
  905.     (16+4)*15 or 300 clists.
  906.  
  907.     To see the number of clists on your system, login as root and run:
  908.  
  909.         cd /usr/sys/conf
  910.         ./configure -y NCLIST
  911.  
  912.     To change the number of clists, say to 300, login as root and run:
  913.  
  914.         cd /usr/sys/conf
  915.         ./configure NCLIST=300
  916.  
  917.     then rebuild and install a new kernel and reboot.
  918.  
  919.  
  920. QD8.  How do I change the 16550A trigger level?
  921.  
  922.     If installing a 16550A UART helped but didn't totally fix a lost
  923.     character problem, and your system is heavily loaded, then there
  924.     is something else you can try.  If you installed a 16550A and
  925.     there was no effect at all, then skip this -- it won't help.
  926.  
  927.     The XENIX `sio' driver initializes the 16550A with a trigger level
  928.     of 14.  This means that under continual data streams the UART will
  929.     wait until 14 characters accumulate before telling XENIX to come
  930.     get them.  This gives the system two character times to get in
  931.     and service the COM port.  If XENIX does not service the port in
  932.     that time the 16-character buffer will overflow and and characters
  933.     will be dropped.  This might happen on a heavily loaded system.
  934.  
  935.     The trigger level is initialized at boot time from the 16-byte
  936.     `sio_fifoctl[]' array.  This array specifies the UART control
  937.     register initialization values for device minor numbers 0 through
  938.     15.  Or more exactly, the minor number is ANDed with 0x0F to get
  939.     the index into this array.  For example, the initialization for
  940.     /dev/tty2a (minor=8) is in `sio_fifoctl[8]'.  The possible values
  941.     are as follows:
  942.  
  943.         sio_fifoctl:    0xCF    0x8F    0x4F    0x0F
  944.         trigger level:   14      8       4       1
  945.  
  946.     The standard value is 0xCF.  A smaller value will notify the system
  947.     earlier that characters are waiting, thus providing the system
  948.     more time to service the port, but increasing the number of
  949.     interrupts generated by the port.
  950.  
  951.     As an example, here is how to change the trigger level for /dev/tty2a
  952.     (and /dev/tty2A) to 8 characters (code=0x8F):
  953.  
  954.         cp /xenix /xenix.save           # make a backup!
  955.         adb -w /xenix                   # use "/etc/_fst" if no "adb"
  956.         * sio_fifoctl+8/x
  957.         sio_fifoctl+0x8:        0xcfcf
  958.                                   | | 
  959.                                   | `---- This is the 8-bit value for the
  960.                                   |          port we want (minor=8).
  961.                                   |
  962.                                   `------ This is the 8-bit value for the
  963.                                           next port (minor=9).
  964.         * sio_fifoctl+0x8/w 0xcf8f
  965.         sio_fifoctl+0x8:        0xcfcf= 0xcf8f
  966.         * $q
  967.  
  968.  
  969. QD9.  How do I adjust the `ttyhog' value?
  970.  
  971.     Since XENIX has a fixed pool of clists, the kernel tries to prevent
  972.     one tty from hogging all of them.  The limit is defined by `ttyhog',
  973.     and defaults to 256 (0x100 hex).  This limit might be too low if
  974.     you've got some particularly fast devices on a particularly slow
  975.     system.  To change the `ttyhog' value you must patch the kernel
  976.     image.  The following increases `ttyhog' to 512 (0x200 hex).
  977.  
  978.         cp /xenix /xenix.save           # make a backup!
  979.         adb -w /xenix                   # use "/etc/_fst" if no "adb"
  980.         * ttyhog/x
  981.         _ttyhog:        0x100
  982.         * ttyhog/w 0x200
  983.         _ttyhog:        0x100=  0x200
  984.         * $q
  985.  
  986.  
  987. QD10.  Where can I find TCP/IP?  NFS?
  988.  
  989.     TCP/IP = many places.  NFS = forget it.
  990.  
  991.     Some TCP/IP vendors are SCO, Novell (the old `Excelan Lan Workplace'
  992.     package), and Network Research Corp.  Our preference is for the
  993.     SCO package.  It is offered in two pieces:  the runtime system
  994.     and the development package.  Please note that you need at least
  995.     the SCO Streams Runtime option before installing TCP/IP.  Many of
  996.     the BSD4.3 networking utilities are provided, and the socket
  997.     interface follows the BSD4.3 model.
  998.  
  999.     NFS for XENIX is not and will not be available.  Newer versions
  1000.     of UNIX provide either a `vnode' (BSD UNIX) or `filesystem switch'
  1001.     (System V 3.2 and beyond) mechanism, that supports new filesystem
  1002.     types.  With XENIX, the filesystem support must be coded right
  1003.     into the kernel.  The task of merging NFS code with VP/ix hacks,
  1004.     XENIX-net hacks, etc. is more than can be justified.
  1005.  
  1006.  
  1007. QD11.  BSD based uucp can't connect to my machine.
  1008.  
  1009.     BSD based uucp sends even parity.  XENIX uucp expects no parity.
  1010.     Add:
  1011.  
  1012.         "" P_ZERO
  1013.  
  1014.     to the chat script in their (not your) `Systems' or `L.sys' file.
  1015.     For example, the following works on a Sun 3:
  1016.  
  1017.         xnxbox Any uucp 19200 5553333 "" P_ZERO "" \r in:--in: nuucp
  1018.  
  1019.  
  1020. QD12.  uucp truncates my system name to seven characters!
  1021.  
  1022.     This misfeature was introduced in the xnx155b supplement.  The
  1023.     story we hear is that SCO broke their `uucp' to cater to systems
  1024.     that choke on long system names.  There is a workaround.  For
  1025.     system name = `verylongname', add to every record in the
  1026.     /usr/lib/uucp/Permissions file:
  1027.  
  1028.         MYNAME=verylongname
  1029.  
  1030.     Next, rename /usr/bin/uuname to /usr/bin/uuname.sco.  Replace
  1031.     /usr/bin/uuname with:
  1032.  
  1033.         :
  1034.         if [ $# -ne 1 -o "X$1" != "X-l" ] ; then
  1035.             exec /usr/bin/uuname.sco $@
  1036.             exit 1
  1037.         fi
  1038.         head -1 /etc/systemid
  1039.         exit $?
  1040.  
  1041.     This allows programs using `uuname' to receive the correct,
  1042.     untruncated name.
  1043.  
  1044.  
  1045. QD13.  What is the uucp `windows' patch?
  1046.  
  1047.     uucp transmits data in packets, usually 64 bytes apiece.  An
  1048.     acknowledgement is required for every packet sent -- but not
  1049.     immediately.  A window of unacknowledged packets is allowed.  The
  1050.     default window size is three, that means `uucico' won't stop
  1051.     sending unless it falls more than three packets behind.  A three
  1052.     packet window isn't big enough for very fast media and long delay
  1053.     media.  The `uucico' binary can be patched to increase the window
  1054.     size by the following manual procedure:
  1055.  
  1056.         cd /usr/lib/uucp
  1057.         cp uucico uucico.old            # make a backup copy!!
  1058.         adb -w uucico
  1059.         * windows/x                     # display windows value
  1060.         _windows:       0x3
  1061.         * windows/w 7                   # change it to seven
  1062.         _windows:       0x3=    0x7
  1063.         * $q                            # done
  1064.  
  1065.     If you have XENIX 2.3.4 but not the Development System, use
  1066.     `/etc/_fst' instead of `adb'.  If you can't find adb on your
  1067.     system, look on the N02 disk.
  1068.  
  1069.     This change increases the window size to seven -- the maximum
  1070.     possible.  A similar change must be performed on the remote system's
  1071.     uucico because the actual window size is negotiated as part of
  1072.     the protocol startup.
  1073.  
  1074.  
  1075. QD14.  uucp gives `alarm' messages, eventually dies.
  1076.  
  1077.     If you run uucp in debugging mode (`uutry -x9') and see it get
  1078.     stuck like:
  1079.  
  1080.         alarm 1
  1081.         send 37777777621
  1082.         alarm 2
  1083.         send 37777777621
  1084.         alarm 3
  1085.         send 37777777621
  1086.         alarm 4
  1087.         send 37777777621
  1088.  
  1089.     and eventually die, this means your system got jammed waiting for
  1090.     a response that never came.  The most common cause of this problem
  1091.     running uucp across a modem with XON/XOFF flow control enabled
  1092.     (e.g. a Telebit modem with S58=3).  You can't do that; you must
  1093.     run with no flow control or RTS/CTS handshaking (on a Telebit that
  1094.     would be S58=0 or S58=2, respectively).  Other possible causes of
  1095.     this problem are serial cards with broken handshaking or running
  1096.     out of clists.
  1097.  
  1098.  
  1099. ******************************************************************************
  1100. **********************  Display and Graphics Questions  **********************
  1101. ******************************************************************************
  1102.  
  1103.  
  1104. QE1.  How can I do graphics under XENIX?  What programs are available?
  1105.  
  1106.     There are two approaches to graphics programming.  At the very
  1107.     lowest level, the screen(HW) manual page describes ioctl() codes
  1108.     to access the video display memory and controller.  Device-independent
  1109.     graphics is provided by the Computer Graphics Interface (CGI)
  1110.     package included with the XENIX Development System.  CGI drivers
  1111.     are provided for VGA, EGA, and Hercules displays; Epson, LaserJet,
  1112.     and Postscript printers; and HP plotters.  Several programs have
  1113.     been posted to the net that run under CGI, such as gnuplot,
  1114.     starchart, and gif.  See comp.sources.misc.
  1115.  
  1116.  
  1117. QE2.  CGI graphics mangles grey scale on a mono VGA.
  1118.  
  1119.     SCO fixed their monochrome VGA driver in version 2.3.3.   The
  1120.     default color mapping in CGI maps many colors with the identical
  1121.     total intensity. They appear as the same shade grey-scale display.
  1122.     Try using the CGI functions vs_color() and/or vsc_table() to create
  1123.     a color map that works with your display.  Try vsf_style() to
  1124.     create hatching or other fill-patterns in place of colors.
  1125.  
  1126.  
  1127. QE3.  CGI graphics fail on a LaserJet in landscape mode.
  1128.  
  1129.     A bug in the CGI 1.1.0 LaserJet driver causes all output to
  1130.     appear on a single line.  In landscape mode the driver puts out
  1131.     a spurious escape sequence `\033&a864V' that forces all output
  1132.     to the same position on the page.  You can either remove the
  1133.     offending escape sequence from the driver with a binary editor
  1134.     (keep a backup copy), or use a filter to clobber that sequence
  1135.     from the output.
  1136.  
  1137.  
  1138. QE4.  How can I do a printscreen under XENIX?
  1139.  
  1140.     MS-DOS users can produce a screen printout with one keystroke.
  1141.     XENIX does not offer this builtin capability.  SCO's MultiView
  1142.     product provides this.  Also, it can be simulated with the following
  1143.     script:
  1144.  
  1145.         :
  1146.         # @(#) prtscrn     Print Screen
  1147.         # execute from cu as ~!prtscrn
  1148.         oldstty=`stty -g`               # save stty
  1149.         stty -echo ixon ixoff -ixany    # no echo
  1150.         /bin/echo '\033[2i\c'           # send screen to host
  1151.         # grab 24 lines, clean up trailing blanks, print it
  1152.         sed -e 's/ *$//' -e 24q | lp
  1153.         stty $oldstty                   # put stty back when done.
  1154.  
  1155.     Another approach is the `prtscrn2' program by Chip Rosenthal.  It
  1156.     grabs the contents of any console screen and sends it to standard
  1157.     output.  See comp.sources.misc.
  1158.  
  1159.  
  1160. ******************************************************************************
  1161. ***************  XENIX and MS-DOS Interoperability Questions  ****************
  1162. ******************************************************************************
  1163.  
  1164.  
  1165. QX1.  Can XENIX share a hard disk with MS-DOS?
  1166.  
  1167.     Yes.  You must:
  1168.  
  1169.         - Install MS-DOS 3.2 bootable partition as the FIRST partition.
  1170.  
  1171.         - Install XENIX bootable as the next partition.
  1172.  
  1173.         - Select XENIX as the `active' partition.
  1174.  
  1175.     At the
  1176.  
  1177.         Boot
  1178.         :
  1179.  
  1180.     prompt either type `dos' for MS-DOS boot or press ENTER for XENIX.
  1181.  
  1182.     If you create any other type of MS-DOS partition (e.g. one of the
  1183.     new larger sized MS-DOS 5.0 partitions) or forget to create the
  1184.     MS-DOS partition before loading XENIX, then you can still access
  1185.     the MS-DOS partition by booting from a floppy disk.
  1186.  
  1187.  
  1188. QX2.  Can XENIX access MS-DOS disks?
  1189.  
  1190.     Yes, with limitations.  The commands on the `dos(C)' manual page
  1191.     provide access to MS-DOS disks (floppy and fixed) under XENIX.
  1192.     The limitation is that only conventional MS-DOS 3.2 hard disk
  1193.     partitions can be recognized.  Extended MS-DOS partitions cannot.
  1194.  
  1195.     If you run into problems with the dos(C) commands, check that
  1196.     `/etc/default/msdos' provides proper aliases for the A:, B:, etc.
  1197.     devices.  Also, if root can access the MS-DOS fixed disk but users
  1198.     can't, check the permissions on /dev/hd0d (the XENIX name of the
  1199.     MS-DOS partition on the first fixed disk).
  1200.  
  1201.     The `mtools' package by Emmet Gray in comp.sources.misc provides
  1202.     better handling of MS-DOS devices under XENIX.  Modify the
  1203.     `devices.c' file to understand XENIX device naming.
  1204.  
  1205.         #ifdef M_XENIX
  1206.         struct device devices[] = {
  1207.             {'A', "/dev/install",  0L, 12, 0, (int (*) ()) 0, 0, 0, 0},
  1208.             {'B', "/dev/install1", 0L, 12, 0, (int (*) ()) 0, 0, 0, 0},
  1209.             {'C', "/dev/hd0d",     0L, 16, 0, (int (*) ()) 0, 0, 0, 0},
  1210.             {'D', "/dev/hd1d",     0L, 16, 0, (int (*) ()) 0, 0, 0, 0},
  1211.             {'\0', (char *) NULL,  0L,  0, 0, (int (*) ()) 0, 0, 0, 0}
  1212.         };
  1213.         #endif /* M_XENIX */
  1214.  
  1215.     If you assign `/dev/install' to the `A' drive, you don't need to
  1216.     worry about disk density when reading and writing.  However, you
  1217.     need to specify the full device name when formatting.  For example,
  1218.     to format a high-density disk in drive A: you must specify the
  1219.     full device name:
  1220.  
  1221.         dosformat /dev/fd096ds15
  1222.  
  1223.  
  1224. QX3.  Can XENIX execute MS-DOS programs?
  1225.  
  1226.     Yes.  You must purchase SCO VP/ix.  VP/ix emulates an 8086 PC/XT
  1227.     running MS-DOS.  The compatibility provided by VP/ix is fair with
  1228.     a significant performance penalty.  VP/ix will not run programs
  1229.     that use 80286 or 80386 instruction codes.  VP/ix is not available
  1230.     for XENIX/286.
  1231.  
  1232.  
  1233. QX4.  Can MS-DOS execute XENIX programs?
  1234.  
  1235.     No.  With the XENIX Development System, you can compile programs
  1236.     to execute under MS-DOS with the `-dos' command line switch.
  1237.  
  1238.  
  1239. ******************************************************************************
  1240. *********************  The (in)Famous XENIX Cheat-Sheet  *********************
  1241. ******************************************************************************
  1242.  
  1243.  
  1244. QZ1.  What the $%*&! is happening?
  1245.  
  1246.     Who am I?                           /usr/bin/who am i
  1247.     Where am I?                         /bin/pwd
  1248.     What am I doing?                    /bin/ps -f
  1249.     Am I having fun yet?                /usr/games/worms -R
  1250.     What's my user/group id?            /usr/bin/id
  1251.     Who did I login as?                 /usr/bin/logname
  1252.     What's my terminal?                 /bin/tty
  1253.     What are my terminal parameters?    /bin/stty -a
  1254.     Is terminal flow control working?   /usr/games/stars
  1255.     What is my current crontab file?    /usr/bin/crontab -l
  1256.     Do I have uucp jobs queued?         /usr/bin/uustat
  1257.     What is the system doing?           /usr/bin/w
  1258.     How is the system running?          /usr/bin/vmstat 10
  1259.     Has the system been swapping?       /usr/bin/vmstat -s
  1260.     Open files, inodes, processes?      /bin/pstat | grep '^[0-9]'
  1261.     What are the kernel parameters?     /usr/sys/conf/configure -x
  1262.     What versions are installed?        egrep "#prd|#set|#rel" /etc/perms/*
  1263.     What are the hardware settings?     /etc/hwconfig -h
  1264.     Is /etc/passwd correct?             /etc/pwcheck
  1265.     Is /etc/group correct?              /etc/grpcheck
  1266.     Is /etc/gettydefs correct?          /etc/getty -c /etc/gettydefs
  1267.     Do all files have owners?           /usr/bin/quot
  1268.     Who is using all the disk space?    /usr/bin/quot
  1269.     When did joe last login?            /usr/bin/last joe
  1270.     What files are owned by UID=944?    find / -user 944 -exec l -d {} \;
  1271.     Are file perms/owners set OK?       cd / ;
  1272.                                           /etc/fixperm -n /etc/perms/rts
  1273.     How about perms on uucp files?      cd / ;
  1274.                                           /etc/fixperm -nd UUCP /etc/perms/rts
  1275.     Check uucp file consistency.        /usr/lib/uucp/uucheck
  1276.     What are uucp access permissions?   /usr/lib/uucp/uucheck -v
  1277.     What is the print spooler doing?    /usr/bin/lpstat -t
  1278.     Stop the scheduler.                 /usr/lib/lpshut
  1279.     Restart a printer.                  /usr/lib/accept printer_name ;
  1280.                                           /usr/bin/enable printer_name
  1281.  
  1282.     [Following apply only if TCP/IP is installed.]
  1283.  
  1284.     Where am I?                         /usr/bin/hostname
  1285.     Is system foo alive?                /usr/bin/ping foo
  1286.     What machines are connected?        /usr/bin/netstat
  1287.     How is the network doing?           /usr/bin/netstat 10
  1288.     Where are the packets going?        /usr/bin/netstat -r
  1289.     Network not work?                   /usr/bin/netstat -s
  1290.  
  1291.     [Thanks to Jeff Liebermann.]
  1292.  
  1293.  
  1294. [ end of sco-xenix 1.35 ]
  1295.  
  1296.